MySQL JOIN操作:从内连接到外连接,新手轻松入门
MySQL的JOIN操作用于合并两个表(如学生表和成绩表)的数据,核心类型及特点如下: **内连接(INNER JOIN)**:仅返回两表匹配记录(如小明、小红、小刚),需用ON指定关联条件(如`students.id = scores.student_id`),否则会生成笛卡尔积(错误)。 **左连接(LEFT JOIN)**:保留左表(学生表)全部记录,右表(成绩表)无匹配则填`NULL`(如小强无分数),适用于需保留主表全部数据时。 **右连接(RIGHT JOIN)**:保留右表(成绩表)全部记录,左表无匹配则填`NULL`(如student_id=5的分数),适用于需保留从表全部数据时。 **全连接(FULL JOIN)**:MySQL不支持,需用`LEFT JOIN + UNION`模拟,包含所有学生和分数,无匹配部分填`NULL`。 注意:必须写ON条件;筛选无分数学生可用`WHERE scores.score IS NULL`;避免连接条件错误导致数据错误。核心逻辑:“左表保留全部,
阅读全文